package com.zw.mes.module.assemble.mapper;


import com.zw.mes.entity.asse.QrParse;
import com.zw.mes.module.assemble.entity.AsseAssemblyRoute;
import com.zw.mes.module.assemble.model.ApplyModel;
import com.zw.mes.module.transpositionManager.model.Select2Model;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 * @Description:
 *
 * @Author: China.wsg
 * @Date: 2021/04/17 13:03
 */
public interface ApplyMapper {

    /** 查询待装配申请质检列表 */
    List<ApplyModel> findAppListByBarCode(QrParse parse);

    /** 获取最新可用数量 */
    Integer getNewMayApplyNum(Integer id);

    /** 修改可申请数量和申请数量 */
    int updateRouteApply(AsseAssemblyRoute route);

    /** 派工单-历史申请列表 */
    List<ApplyModel> findHistoryApplyListByQuery(ApplyModel applyModel);

    /** 派工单-删除状态（撤销\重新提交） */
    int updateTransIsdel(@Param("id") Integer id, @Param("isDel") Integer isDel);

    /** 更新可用申请数量和申请数量 */
    int updateRouteDel(AsseAssemblyRoute route);

    /** 如果没申请质检，转序状态设置成未开始 */
    int updateRouteStatusNotStarted(Integer routeId);

    /** 获取接收的生产令列表 */
    List<Select2Model> getRecProdNoList(@Param("prodNo") String prodNo);

    /** 获取接收的生产令列表 */
    List<Select2Model> getRecProdNoSpecialList(@Param("prodNo") String prodNo);

    /** 获取接收的部分列表 */
    List<Select2Model> getRecProdNoPartList(@Param("prodNo") String prodNo,@Param("special") String special);

    /** 获取接收的部分列表 */
    List<Select2Model> getRecProdNoDrawNoList(@Param("prodNo") String prodNo,@Param("special") String special,@Param("partId") Integer partId);


}
